home *** CD-ROM | disk | FTP | other *** search
/ Gold Medal Software 2 / Gold Medal Software Volume 2 (Gold Medal) (1994).iso / windows / comms / recomm10.arj / RECOMNET.H < prev    next >
C/C++ Source or Header  |  1993-10-12  |  3KB  |  173 lines

  1. #ifdef CFILES
  2.  
  3. #include <windows.h>
  4. #include <commdlg.h>
  5. #include <stdio.h>
  6. #include <string.h> 
  7. #include <toolhelp.h>
  8. #include <string.h>
  9. #include <wnetbios.h>
  10.  
  11. #endif
  12. #ifdef MAIN
  13.     #define EXTVAR
  14. #else
  15.  
  16.     #define EXTVAR extern
  17. #endif
  18.  
  19. #define APPNAME "RE_COM_CTRL"
  20. #define SRVNAME "ReCommSrv"
  21.  
  22. #define APPINI "recomm.ini"
  23. #define APPTITLE "RemoteCommPort"
  24.  
  25. #define INICOM     1
  26. #define SETCOM     2
  27. #define SETQUE     3
  28. #define RECCOM     4
  29. #define SNDCOM     5
  30. #define CTX        6
  31. #define TRMCOM    7
  32. #define STACOM    8
  33. #define CEXTFCN 9
  34. #define CFLUSH    10
  35. #define CEVT     11
  36. #define CEVTGET 12
  37. #define CSETBRK 13
  38. #define CCLRBRK 14
  39. #define GETDCB  15
  40. #define CWSTRING 16
  41. #define CRSTRING 17
  42. #define ENABLENOTI 18
  43.  
  44. #define GETMASK 19
  45.  
  46. #define CONNECT 20
  47.  
  48. #define IDD_ABOUT 2000
  49. #define IDD_BREAK 2001
  50.  
  51. #define IDD_LISTE 1000
  52. #define IDD_TIMER 1001
  53.  
  54. EXTVAR char szAppName[30];   
  55.  
  56. EXTVAR HANDLE hInstance;
  57. EXTVAR HWND    HwnD;
  58. EXTVAR LPNCB lpNCB;
  59.  
  60. typedef struct {
  61.     char far    *pqRx;  /* pointer to Rx queue          */
  62.     int         cbqRx;  /* size of Rx queue in bytes    */
  63.     char far    *pqTx;  /* pointer to Tx queue          */
  64.     int         cbqTx;  /* size of Tx queue in bytes    */
  65. } QDB;
  66.  
  67. typedef struct {
  68.     HWND hwnd;
  69.     WORD inTrig;
  70.     WORD outTrig;
  71. } NOTI;
  72.  
  73. typedef struct {
  74.     WORD eword;
  75.     WORD stat;
  76. } EVN;
  77.  
  78.  
  79. union datarec {
  80.     DCB dcb;
  81.     QDB qdb;
  82.     COMSTAT cs;
  83.     NOTI noti;
  84.     EVN ev;
  85.     char txt[4096];
  86.     int x;
  87. };                
  88.  
  89. struct recComData {    short len;
  90.     short fnc;
  91.     long rc;
  92.     int evmask;
  93.     union    datarec a;
  94. } comData;      
  95.  
  96. struct recFindSrv {
  97.     BOOL stat;
  98.     char name[50];
  99.     } fndSrv;
  100.  
  101.  
  102. char cmd[][10] = {    "CONNECT",
  103.     "INICOM",
  104.     "SETCOM",
  105.     "SETQUE",
  106.     "RECCOM",
  107.     "SNDCOM",
  108.     "CTX",
  109.     "TRMCOM",
  110.     "STACOM",
  111.     "CEXTFCN", 
  112.     "CFLUSH",
  113.     "CEVT",
  114.     "CEVTGET",
  115.     "CSETBRK",
  116.     "CCLRBRK",
  117.     "GETDCB",
  118.     "CWSTRING",
  119.     "CRSTRING",
  120.     "ENABLENOT", 
  121.     "GETMASK", 
  122. "UNKWON" };
  123.  
  124. #define SC (sizeof(comData) - sizeof(comData.a) +1)            
  125.  
  126. int cmdsize[] = {    SC,    // CONNECT
  127.     SC + sizeof(comData.a.dcb),    // INICOM
  128.     SC + sizeof(comData.a.dcb),    // SETCOM
  129.     SC + sizeof(comData.a.qdb),    // SETQUE
  130.     SC,   // RECCOM
  131.     SC + sizeof(comData.a.x),   // SNDCOM
  132.     SC + sizeof(comData.a.x),   // CTX
  133.     SC,   // TRMCOM
  134.     SC + sizeof(comData.a.cs), // STACOM
  135.     SC + sizeof(comData.a.x),   // CEXTFCN
  136.     SC + sizeof(comData.a.x),   // CFLUSH
  137.     SC + sizeof(comData.a.x),      // CEVT
  138.     SC + sizeof(comData.a.x),   // CEVTGET
  139.     SC,   // CSETBRK
  140.     SC,   // CCLRBRK
  141.     SC + sizeof(comData.a.dcb), // GETDCB
  142.     SC,      // CWSTRING Σndert sich
  143.     SC,   // CRSTRING 
  144.     SC + sizeof(comData.a.noti),   // ENABLENOTI
  145.     SC,   // GETMASK
  146. SC };
  147.  
  148.  
  149. int REMOTE_COM = 3;
  150. unsigned long poll = 5000;
  151.  
  152. unsigned long tick, tack, evtick; 
  153.  
  154. BOOL CONECTED = FALSE;
  155. BOOL INTRANS  = FALSE;
  156.  
  157. int event = 0;
  158. NOTI noti;
  159.  
  160. extern HINSTANCE hLibrary;
  161.  
  162.     
  163. //
  164. // FUNCTION PROTOYPES
  165. //
  166. //
  167.  
  168. int readAnswer();
  169. int analizeMessage();
  170. int sendCMD();
  171. int sendDgram();
  172. void exitDll();
  173.